Crate zipfs

source ·
Expand description

github crates.io docs.rs

An async filesystem on top of Zip files.

This library is built on top of Lunchbox, an async virtual filesystem interface.

See the lunchbox docs for usage details.

Getting started

[dependencies]
lunchbox = "0.1"
zipfs = "0.0.1"

Step 1: Load a filesystem

use std::path::PathBuf;
use zipfs::ZipFS;

let zipfs = ZipFS::new(PathBuf::from("/some/path/to/a/file.zip"));

// Use it like any other lunchbox filesystem. See the lunchbox docs for more details.

Structs

Traits

  • In order to open and read multiple files simultaneously, we need multiple AsyncRead + AsyncSeek streams for the zip file. Note that clone generally doesn’t work because we need independent reads and seeks across the streams